Adaptive bitrate (ABR) streaming allows delivery of media to client devices at bit rates that may be dynamically adjusted based on network congestion, latency, processing delays, etc. so as to provide a stream at the best quality possible without interruption. In one implementation, a media stream may be divided into a plurality of short portions on the order of a few seconds, with each portion or segment encoded at a plurality of bitrates. In low congestion or latency periods, the client may request high quality segments from a media server, while in high congestion or latency periods, the client may request low quality segments. The client may thus dynamically adjust the quality of the stream, on a segment by segment basis.
The details of various embodiments of the methods and systems are set forth in the accompanying drawings and the description below.